package Model;

/**
 * @author Waseem
 * @version 1.0
 */
public class ConfigScreenModel {
	/*
	 * Enum Level
	 * 
	 */
	public enum Level
	{
		BEGINNER(1), EASY(2), NORMAL(3), HARD(4), IMPOSSIBLE(5);
		
		/**
		 * 
		 */
		private final int value;
		
		/**
		 * @param value
		 */
		private Level(int value){
			this.value = value;
		}
	}
	
	/**
	 * 
	 */
	private Level level;
	
	/**
	 * 
	 */
	private int totalPoints;

	/**
	 * 
	 */
	private int pilotLevel;

	/**
	 * 
	 */
	private int fighterLevel;

	/**
	 * 
	 */
	private int traderLevel;

	/**
	 * 
	 */
	private int engineerLevel;
	
	/**
	 * 
	 */
	private String name;
	
	/*
	 * Constructor
	 * 
	 */
	/**
	 * 
	 */
	public ConfigScreenModel(){
		this.totalPoints = 16;
		this.pilotLevel = 0;
		this.fighterLevel = 0;
		this.traderLevel = 0;
		this.engineerLevel = 0;
	}

	/**
	 * @return
	 */
	public Level getLevel() {
		return level;
	}

	/**
	 * @return
	 */
	public int getTotalPoints() {
		return totalPoints;
	}

	/**
	 * @return
	 */
	public int getPilotLevel() {
		return pilotLevel;
	}

	/**
	 * @return
	 */
	public int getFighterLevel() {
		return fighterLevel;
	}

	/**
	 * @return
	 */
	public int getTraderLevel() {
		return traderLevel;
	}

	/**
	 * @return
	 */
	public int getEngineerLevel() {
		return engineerLevel;
	}
	
	/**
	 * @return
	 */
	public String getName() {
		return name;
	}
	
	/**
	 * @param level
	 */
	public void setLevel(Level level){
		this.level = level;
	}
	
	/**
	 * @param name
	 */
	public void setName(String name){
		this.name = name;
	}
	
	/**
	 * @param totalPoints
	 */
	public void setTotalPoints(int totalPoints) {
		this.totalPoints = totalPoints;
	}
	
	/**
	 * @param pilotLevel
	 */
	public void setPilotLevel(int pilotLevel) {
		this.pilotLevel = pilotLevel;
	}
	
	/**
	 * @param fighterLevel
	 */
	public void setFighterLevel(int fighterLevel) {
		this.fighterLevel = fighterLevel;
	}
	
	/**
	 * @param traderLevel
	 */
	public void setTraderLevel(int traderLevel) {
		this.traderLevel = traderLevel;
	}
	
	
	/**
	 * @param engineerLevel
	 */
	public void setEngineerLevel(int engineerLevel) {
		this.engineerLevel = engineerLevel;
	}	
	
	/* (non-Javadoc)
	 * @see java.lang.Object#toString()
	 */
	public String toString(){
		return super.toString();
	}
}
